package com.ruoyi.common.core.domain.model;

import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 会员对象 vs_user
 * 
 * @author zzx
 * @date 2024-04-30
 */
public class VsUser extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** ID */
    private Long id;

    /** 站点 */
    @Excel(name = "站点")
    private Long siteId;

    /** 组别ID */
    @Excel(name = "组别ID")
    private Long groupId;

    /** 邀请人 */
    @Excel(name = "邀请人")
    private Long parentUserId;

    /** 用户名 */
    @Excel(name = "用户名")
    private String username;

    /** 昵称 */
    @Excel(name = "昵称")
    private String nickname;

    /** 密码 */
    @Excel(name = "密码")
    private String password;

    /** 密码盐 */
    @Excel(name = "密码盐")
    private String salt;

    /** 电子邮箱 */
    @Excel(name = "电子邮箱")
    private String email;

    /** 手机号 */
    @Excel(name = "手机号")
    private String mobile;

    /** 头像 */
    @Excel(name = "头像")
    private String avatar;

    /** 等级 */
    @Excel(name = "等级")
    private String level;

    /** 性别 */
    @Excel(name = "性别")
    private String gender;

    /** 生日 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "生日", width = 30, dateFormat = "yyyy-MM-dd")
    private Date birthday;

    /** 格言 */
    @Excel(name = "格言")
    private String bio;

    /** 余额 */
    @Excel(name = "余额")
    private BigDecimal money;

    /** 积分 */
    @Excel(name = "积分")
    private Long score;

    /** 剧场积分 */
    @Excel(name = "剧场积分")
    private Long usable;

    /** 连续登录天数 */
    @Excel(name = "连续登录天数")
    private String successions;

    /** 最大连续登录天数 */
    @Excel(name = "最大连续登录天数")
    private String maxsuccessions;

    /** 上次登录时间 */
    @Excel(name = "上次登录时间")
    private Long prevtime;

    /** 登录时间 */
    @Excel(name = "登录时间")
    private Long logintime;

    /** 登录IP */
    @Excel(name = "登录IP")
    private String loginip;

    /** 失败次数 */
    @Excel(name = "失败次数")
    private String loginfailure;

    /** 加入IP */
    @Excel(name = "加入IP")
    private String joinip;

    /** 加入时间 */
    @Excel(name = "加入时间")
    private Long jointime;

    /** VIP到期时间 */
    @Excel(name = "VIP到期时间")
    private Long vipExpiretime;

    /** Token */
    @Excel(name = "Token")
    private String token;

    /** 模式:guest=游客,user=用户 */
    @Excel(name = "模式:guest=游客,user=用户")
    private String mode;

    /** 状态 */
    @Excel(name = "状态")
    private String status;

    /** 验证 */
    @Excel(name = "验证")
    private String verification;

    private Long createtime;

    private Long updatetime;

    /** 查询用户信息需要，sql自己判断传的是手机号还是邮箱 */
    private String keyword;

    /** 如果不是密码注册就随机生成 */
    private String randomPwd;

    /** 验证码 */
    private String code;

    /** 国际区号 */
    private String areaCode;

    private Integer isVip;

    private Integer isRegister;

    private String oldpassword;

    private String newpassword;

    private Long resellerExpiretime;

    private String resellerName;

    private String openid;

    private String spm;

    private String provider;

    public String getProvider() {
        return provider;
    }

    public void setProvider(String provider) {
        this.provider = provider;
    }

    public String getOpenid() {
        return openid;
    }

    public void setOpenid(String openid) {
        this.openid = openid;
    }

    public String getSpm() {
        return spm;
    }

    public void setSpm(String spm) {
        this.spm = spm;
    }

    public String getResellerName() {
        return resellerName;
    }

    public void setResellerName(String resellerName) {
        this.resellerName = resellerName;
    }

    public Long getResellerExpiretime() {
        return resellerExpiretime;
    }

    public void setResellerExpiretime(Long resellerExpiretime) {
        this.resellerExpiretime = resellerExpiretime;
    }

    public String getNewpassword() {
        return newpassword;
    }

    public void setNewpassword(String newpassword) {
        this.newpassword = newpassword;
    }

    public String getOldpassword() {
        return oldpassword;
    }

    public void setOldpassword(String oldpassword) {
        this.oldpassword = oldpassword;
    }

    public Integer getIsRegister() {
        return isRegister;
    }

    public void setIsRegister(Integer isRegister) {
        this.isRegister = isRegister;
    }

    public Integer getIsVip() {
        return isVip;
    }

    public void setIsVip(Integer isVip) {
        this.isVip = isVip;
    }

    public String getAreaCode() {
        return areaCode;
    }

    public void setAreaCode(String areaCode) {
        this.areaCode = areaCode;
    }

    public String getCode() {
        return code;
    }

    public void setCode(String code) {
        this.code = code;
    }

    public String getRandomPwd() {
        return randomPwd;
    }

    public void setRandomPwd(String randomPwd) {
        this.randomPwd = randomPwd;
    }

    public String getKeyword() {
        return keyword;
    }

    public void setKeyword(String keyword) {
        this.keyword = keyword;
    }

    public Long getCreatetime() {
        return createtime;
    }

    public void setCreatetime(Long createtime) {
        this.createtime = createtime;
    }

    public Long getUpdatetime() {
        return updatetime;
    }

    public void setUpdatetime(Long updatetime) {
        this.updatetime = updatetime;
    }

    public void setId(Long id)
    {
        this.id = id;
    }

    public Long getId() 
    {
        return id;
    }
    public void setSiteId(Long siteId) 
    {
        this.siteId = siteId;
    }

    public Long getSiteId() 
    {
        return siteId;
    }
    public void setGroupId(Long groupId) 
    {
        this.groupId = groupId;
    }

    public Long getGroupId() 
    {
        return groupId;
    }
    public void setParentUserId(Long parentUserId) 
    {
        this.parentUserId = parentUserId;
    }

    public Long getParentUserId() 
    {
        return parentUserId;
    }
    public void setUsername(String username) 
    {
        this.username = username;
    }

    public String getUsername() 
    {
        return username;
    }
    public void setNickname(String nickname) 
    {
        this.nickname = nickname;
    }

    public String getNickname() 
    {
        return nickname;
    }
    public void setPassword(String password) 
    {
        this.password = password;
    }

    public String getPassword() 
    {
        return password;
    }
    public void setSalt(String salt) 
    {
        this.salt = salt;
    }

    public String getSalt() 
    {
        return salt;
    }
    public void setEmail(String email) 
    {
        this.email = email;
    }

    public String getEmail() 
    {
        return email;
    }
    public void setMobile(String mobile) 
    {
        this.mobile = mobile;
    }

    public String getMobile() 
    {
        return mobile;
    }
    public void setAvatar(String avatar) 
    {
        this.avatar = avatar;
    }

    public String getAvatar() 
    {
        return avatar;
    }
    public void setLevel(String level) 
    {
        this.level = level;
    }

    public String getLevel() 
    {
        return level;
    }
    public void setGender(String gender) 
    {
        this.gender = gender;
    }

    public String getGender() 
    {
        return gender;
    }
    public void setBirthday(Date birthday) 
    {
        this.birthday = birthday;
    }

    public Date getBirthday() 
    {
        return birthday;
    }
    public void setBio(String bio) 
    {
        this.bio = bio;
    }

    public String getBio() 
    {
        return bio;
    }
    public void setMoney(BigDecimal money) 
    {
        this.money = money;
    }

    public BigDecimal getMoney() 
    {
        return money;
    }
    public void setScore(Long score) 
    {
        this.score = score;
    }

    public Long getScore() 
    {
        return score;
    }
    public void setUsable(Long usable) 
    {
        this.usable = usable;
    }

    public Long getUsable() 
    {
        return usable;
    }
    public void setSuccessions(String successions) 
    {
        this.successions = successions;
    }

    public String getSuccessions() 
    {
        return successions;
    }
    public void setMaxsuccessions(String maxsuccessions) 
    {
        this.maxsuccessions = maxsuccessions;
    }

    public String getMaxsuccessions() 
    {
        return maxsuccessions;
    }
    public void setPrevtime(Long prevtime) 
    {
        this.prevtime = prevtime;
    }

    public Long getPrevtime() 
    {
        return prevtime;
    }
    public void setLogintime(Long logintime) 
    {
        this.logintime = logintime;
    }

    public Long getLogintime() 
    {
        return logintime;
    }
    public void setLoginip(String loginip) 
    {
        this.loginip = loginip;
    }

    public String getLoginip() 
    {
        return loginip;
    }
    public void setLoginfailure(String loginfailure) 
    {
        this.loginfailure = loginfailure;
    }

    public String getLoginfailure() 
    {
        return loginfailure;
    }
    public void setJoinip(String joinip) 
    {
        this.joinip = joinip;
    }

    public String getJoinip() 
    {
        return joinip;
    }
    public void setJointime(Long jointime) 
    {
        this.jointime = jointime;
    }

    public Long getJointime() 
    {
        return jointime;
    }
    public void setVipExpiretime(Long vipExpiretime) 
    {
        this.vipExpiretime = vipExpiretime;
    }

    public Long getVipExpiretime() 
    {
        return vipExpiretime;
    }
    public void setToken(String token) 
    {
        this.token = token;
    }

    public String getToken() 
    {
        return token;
    }
    public void setMode(String mode) 
    {
        this.mode = mode;
    }

    public String getMode() 
    {
        return mode;
    }
    public void setStatus(String status) 
    {
        this.status = status;
    }

    public String getStatus() 
    {
        return status;
    }
    public void setVerification(String verification) 
    {
        this.verification = verification;
    }

    public String getVerification() 
    {
        return verification;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("siteId", getSiteId())
            .append("groupId", getGroupId())
            .append("parentUserId", getParentUserId())
            .append("username", getUsername())
            .append("nickname", getNickname())
            .append("password", getPassword())
            .append("salt", getSalt())
            .append("email", getEmail())
            .append("mobile", getMobile())
            .append("avatar", getAvatar())
            .append("level", getLevel())
            .append("gender", getGender())
            .append("birthday", getBirthday())
            .append("bio", getBio())
            .append("money", getMoney())
            .append("score", getScore())
            .append("usable", getUsable())
            .append("successions", getSuccessions())
            .append("maxsuccessions", getMaxsuccessions())
            .append("prevtime", getPrevtime())
            .append("logintime", getLogintime())
            .append("loginip", getLoginip())
            .append("loginfailure", getLoginfailure())
            .append("joinip", getJoinip())
            .append("jointime", getJointime())
            .append("createtime", getCreatetime())
            .append("updatetime", getUpdatetime())
            .append("vipExpiretime", getVipExpiretime())
            .append("token", getToken())
            .append("mode", getMode())
            .append("status", getStatus())
            .append("verification", getVerification())
            .toString();
    }
}
